package com.cetcs.kmga.dataManager.util;

import org.apache.commons.lang.StringUtils;

import java.text.DecimalFormat;

/**
 * 数字换算
 *
 * @author xutao
 * @version V1.0 创建时间：2017/5/15 10:05
 *          Copyright 2017 by CETC
 */
public class NumConversion {

    /**
     * 数字单位换算，保留两位小数
     *
     * @param num
     * @return
     */
    public static String conversionNumUnit(long num) {

        //超过1万小于1亿换算成万
        String numStr = String.valueOf(num);
        DecimalFormat df = new DecimalFormat("#0.00");
        if (num >= 10000 && num < 10000 * 10000) {
            double dw = 10000 * 1.00;
            numStr = df.format(num / dw) + "万";
        } else if (num >= 10000 * 10000) {
            double dw = 10000 * 10000 * 1.00;
            numStr = df.format(num / dw) + "亿";
        }
        return numStr;
    }

    /**
     * 数字单位换算，保留两位小数
     *
     * @param numStr
     * @return
     */
    public static String conversionNumStrUnit(String numStr) {

        long num = Long.parseLong(numStr);
        //超过1万小于1亿换算成万
        numStr = conversionNumUnit(num);
        return numStr;
    }

    /**
     * 判断字符是否是正整数
     *
     * @param numStr
     * @return
     */
    public static boolean isPositiveInt(String numStr) {
        boolean ret = false;
        if (StringUtils.isNotBlank(numStr)) {
            try {
                int num = Integer.parseInt(numStr);
                if (num > 0) {
                    ret = true;
                }
            } catch (Exception ex) {

            }
        }
        return ret;
    }
}
